home *** CD-ROM | disk | FTP | other *** search
/ SuperHack / SuperHack CD.bin / CODING / DELPHI / CGIXPERT.ZIP / EXAMPLE / FDBQUERY.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1996-09-03  |  2.4 KB  |  91 lines

  1. unit FDBQuery;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   CgiDBUtl, CGIUtl, CGIEng, DB, DBTables;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.     CGIEngine1: TCGIEngine;
  12.     CGIMaster1: TCGIMaster;
  13.     CGIDBGrid1: TCGIDBGrid;
  14.     Query1: TQuery;
  15.     procedure CGIMaster1HtmlBody;
  16.     procedure CGIEngine1CGIRequest(Sender: TObject);
  17.     procedure CGIDBGrid1CustomiseRow(Sender: TObject; var TextColor,
  18.       BGColor: TColor);
  19.     procedure CGIDBGrid1CustomiseField(Sender: TObject; Field: TField;
  20.       var FieldString, Link: string; var TextColor, BGColor: TColor;
  21.       var FontSize: TFontSize; var Bold, Italic, NoFlow, NoWrap: Boolean);
  22.   private
  23.     { Private declarations }
  24.   public
  25.     { Public declarations }
  26.   end;
  27.  
  28. var
  29.   Form1: TForm1;
  30.  
  31. implementation
  32.  
  33. {$R *.DFM}
  34.  
  35. procedure TForm1.CGIMaster1HtmlBody;
  36. var
  37.   S : String;
  38. begin
  39.   with CGIEngine1 do
  40.   begin
  41.     PutLine('<CENTER>');
  42.     PutLine('<FORM METHOD=POST ACTION="dbquery.exe">');
  43.     PutLine('Query : <INPUT NAME="QUERY" TYPE=text VALUE="Select * From Shares" SIZE=70 MAXLENGTH=200><BR><BR>');
  44.     PutLine('<INPUT NAME="EXECUTE" TYPE=submit SIZE=20 VALUE="Execute Query">');
  45.     PutLine('</FORM><BR><BR>');
  46.  
  47.     S:=GetFormString('Query');
  48.     if S<>Not_Available then
  49.     Try
  50.       Query1.SQL.Clear; Query1.SQL.Add(S); Query1.Open;
  51.       CGIDBGrid1.Title.Caption:=S;
  52.       CGIDBGrid1.Put;
  53.     except
  54.         PutLine('To run this application you have to create an alias named "CGITestDB" pointing at the path where the shares.db file is situated.');
  55.     end;
  56.   end;
  57. end;
  58.  
  59. procedure TForm1.CGIEngine1CGIRequest(Sender: TObject);
  60. begin
  61.   CGIMaster1.Put;
  62. end;
  63.  
  64. procedure TForm1.CGIDBGrid1CustomiseRow(Sender: TObject; var TextColor,
  65.   BGColor: TColor);
  66. begin
  67.   try
  68.   if Query1.FieldByName('Diff').AsFloat>0 then
  69.     TextColor:=clBlue
  70.   else if Query1.FieldByName('Diff').AsFloat<0 then
  71.     TextColor:=clRed;
  72.   except
  73.   end;
  74. end;
  75.  
  76. procedure TForm1.CGIDBGrid1CustomiseField(Sender: TObject; Field: TField;
  77.   var FieldString, Link: string; var TextColor, BGColor: TColor;
  78.   var FontSize: TFontSize; var Bold, Italic, NoFlow, NoWrap: Boolean);
  79. begin
  80.   if AnsiUpperCase(Field.FieldName)='DATE' then
  81.   begin
  82.     FontSize:=fsSize2;
  83.     TextColor:=clBlack;
  84.     Italic:=True;
  85.   end
  86.   else if AnsiUpperCase(Field.FieldName)='NAME' then
  87.     Bold:=True;
  88. end;
  89.  
  90. end.
  91.